An error-correcting code (ECC) or forward error correction (FEC) code are codes where each data signal conforms to specific rules of construction so that errors in the received signal can be detected and corrected. These codes are often used in computer data storage and in data transmission.
A powerful class of error-correcting codes are Reed-Solomon (RS) codes. Reed-Solomon error correction is works by constructing a polynomial from the data. The coefficients of this polynomial are sent or recorded. As long as the receiver gets many of the coefficients correctly, the receiver can recover the original polynomial even in the presence of a few erroneous coefficients.
Reed-Solomon codes are used in a wide variety of commercial applications. For example, Reed-Solomon codes are used in CDs and DVDs. Reed-Solomon codes are also used in data transmission technologies such as Digital Subscriber Loop (DSL), WiMAX, Digital Video Broadcasting (DVB), and digital television.